package cn.hss.string;

import java.util.Scanner;

/**金额转换
 * 把2135变成：零佰零拾零万贰仟壹佰叁拾伍元
 * @author 作者：HeShaoShuai
 * @Email 邮箱：2569819541@qq.com
 * @Date 日期：2023/4/25 20:15
 * @Package 包名：cn.hss.string
 * @Project 项目名：JavaSE
 * @Version 1.0
 */
public class StringDemo3 {
	public static void main(String[] args) {
		//1.从键盘录入金额
		Scanner sca = new Scanner(System.in);
		int money = sca.nextInt();
		//定义一个变量用来表示钱的大写
		String moneyStr="";
		//2.得到money中的每一位数字，再转成中文
		while(true){//2135
			//从右边往左获取数据，右侧是个位
			int geNum=money%10;
			String strNum=getStrNum(geNum);
			moneyStr=strNum+moneyStr;
			//System.out.println(moneyStr);
			//第一次循环  "伍"
			//第一次循环  “叁”+"伍"=“叁伍”
			//去掉刚刚获取的数据
			money=money/10;
			//如果数字上的每一位全部获取到了，
			// 那么money记录的就是0，因此循环结束
			if(money==0){
				break;
			}
		}
		//3.在前面补0，补齐7位
		int len=7-moneyStr.length();
		for(int i=0;i<len;i++){
			moneyStr="零"+moneyStr;
		}
		//System.out.println(moneyStr);//零零零贰壹叁伍
		//4.插入单位
		//定义一个数组表示单位
		String[] str={"百","拾","万","仟","百","拾","元"};
		String result="";
		for (int i=0;i<moneyStr.length();i++){
			//获取moneyStr中的每一个字符
			char c = moneyStr.charAt(i);
			// System.out.print(c+" ");
			result=result+c+str[i];
		}
		//5.打印结果
		System.out.println(result);
	}
	//把数字转换为大写的中文
	private static String getStrNum(int geNum) {
		//定义字符串数组
		String[] arr={"零","壹","贰","叁","肆",
				"伍","陆","柒","捌","玖"};
		return arr[geNum];
	}
}
